<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../plugins/vue.min.js"></script>
    <style>
    </style>
</head>
<body>
    <div id="one">
        <!-- v-hello="yellow"  此时yellow是一个状态,而不是字符串,会报错,没有定义 -->
        <div v-hello="'yellow'">11111111</div>
        <p v-hello="'red'">22222</p>
        <p v-hello="myColor">22222</p>
    </div>
<script>
    // Vue.directive("hello",{
    //     // 指令的生命周期
    //     // 可以传递一个参数,当没有要传递的值时,可以是一个
    //     // 第一次插入父组件中会触发,当里面渲染完结束之后,在改变状态,那么就不会再执行
    //     inserted(el,binding){
    //         console.log("inserted",el,binding)
    //         el.style.background = binding.value
    //     },
    //     // 每次状态改变都会走  
    //     // mm.myColor = 'red'    没有写update直接写这个没有效果
    //     update(el,binding){
    //         console.log(binding.value)

    //         console.log("我改变了")
    //         el.style.background = binding.value
    //     }
    // })

    // 直接写一个回调函数,当插入和更改时,都会执行,
    Vue.directive("hello",(el,binding)=>{
            console.log("我改变了")
            el.style.background = binding.value
    }
    )
    let mm = new Vue({
        el:'#one',
       data:{
        myColor:"blue"
    }
    })
</script>
</body>
</html>